//全局变量，将所有最小化的对话框全部存于此数组之中，用来同步计算用
var minDlgArray = [];

//最小化时候调用的函数，将传递过来的对话框通过动画隐藏。
function minDlgByAnimate(dialog){
	//隐藏对话框
	dialog.DOM.wrap.animate({ top: '100px', left: '-500px', opacity: 0 }, 700, function(){
		//创建div，即最下化菜单项
		createMinMenuDiv(dialog)
	});
	//最小化的对话框存入数组之中
	minDlgArray.push(dialog);
}

function createMinMenuDiv(dialog){
	//完成最小化菜单项的组装
	var liDiv = $("<div>");
	liDiv.attr("class","lidiv");
	var minDiv = $("<div>"+dialog.config.title+"</div>");	
	minDiv.attr("title",dialog.config.title);
	minDiv.attr("class","mindiv");
	liDiv.append(minDiv);
	//将div添加到minbar之中
	addMinDivToMinBar(liDiv);
	//close按钮
	var closeBtnHTML = '<div title="关闭" class="closediv"></div>';
	minDiv.append(closeBtnHTML);
	//点击事件
	liDiv.click(resizeMinDlgByAnimate);
}

function addMinDivToMinBar(liDiv){
	$("#minDlgBar").append(liDiv);
}

//还原对话框的函数
function resizeMinDlgByAnimate(evt){
	var index = $(this).index("#minDlgBar .lidiv");
	var dialog = minDlgArray[index];
	if(evt.srcElement.className=="closediv"){
		dialog.close();
		//将数组中的元素给清除,调用工具类的方法
		removeArrayItemByIndex(index,minDlgArray);
	}else{
		dialog.DOM.wrap.animate({ top: dialog.config.top, left:dialog.config.left, opacity: 1 }, 700, function(){
			//将数组中的元素给清除,调用工具类的方法
			removeArrayItemByIndex(index,minDlgArray);
		});
		dialog.zindex();
	}
	//同时将div销毁
	$(this).remove();
}

//点击二级菜单调用的方法
function resizeMinDlgFuncBySecondaryfuncDiv(dialog){
	var index = searchIndexByItem(dialog, minDlgArray);
	dialog.DOM.wrap.animate({ top: dialog.config.top, left:dialog.config.left, opacity: 1 }, 700, function(){
		//将数组中的元素给清除,调用工具类的方法
		removeArrayItemByIndex(index,minDlgArray);
	});
	$($("#minDlgBar")[0].children[index]).remove();
	dialog.zindex();
}